Platform Explorer / Nuxeo Platform LTS 2017 9.10

Component org.nuxeo.ecm.platform.routing.dashboard.layouts

Contributions

XML Source

<?xml version="1.0" encoding="UTF-8"?>
<component name="org.nuxeo.ecm.platform.routing.dashboard.layouts">
  <require>org.nuxeo.ecm.platform.routing.dashboard.actions</require>
  <require>org.nuxeo.ecm.platform.routing.actions</require>

  <extension target="org.nuxeo.ecm.core.schema.TypeService"
    point="schema">
    <schema name="user_open_tasks_cv" prefix="user_open_tasks_cv"
      src="schemas/user_open_tasks_cv.xsd" />
  </extension>

  <extension target="org.nuxeo.ecm.core.schema.TypeService"
    point="doctype">
    <doctype name="user_open_tasks_cv" extends="Document">
      <facet name="ContentViewDisplay" />
      <schema name="user_open_tasks_cv" />
    </doctype>
  </extension>

  <extension target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager"
    point="widgettypes">

    <widgetType name="listing_process_task">
      <configuration>
        <title>Listing process task link</title>
        <documentation>
          Two fields are required:
          <ul>
            <li>A field to map the task</li>
            <li>A field to map the targetDocumentId on the task</li>
          </ul>
        </documentation>
        <sinceVersion>5.7.3</sinceVersion>
        <categories>
          <category>routing</category>
        </categories>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/listing/listing_process_task_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="listing_workflow_name_task">
      <configuration>
        <title>Listing the name of the workflow that created the task
        </title>
        <documentation>
          A field is required:
          <ul>
            <li>A field to map the processId on the task</li>
          </ul>
        </documentation>
        <sinceVersion>5.7.3</sinceVersion>
        <categories>
          <category>routing</category>
        </categories>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/listing/listing_workflow_name_task_widget_template.xhtml
      </property>
    </widgetType>
  </extension>



  <extension target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager"
    point="widgets">

    <!-- Listing widgets -->
    <widget name="routing_task_name" type="text">
      <labels>
        <label mode="any">label.workflow.task.name</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>data.nt.name</field>
      </fields>
      <properties mode="any">
        <property name="localize">true</property>
      </properties>
    </widget>

    <widget name="routing_task_target_document" type="singleDocumentSuggestion">
      <labels>
        <label mode="any">label.document</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>data.nt.targetDocumentsIds</field>
      </fields>
    </widget>

    <widget name="routing_task_duedate" type="datetime">
      <labels>
        <label mode="any">label.widget.task_step.dueDate</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>data.nt.dueDate</field>
      </fields>
      <properties mode="any">
        <property name="format">#{nxu:dateAndTimeFormatter('medium')}
        </property>
        <property name="timeZone">#{timeZone}</property>
      </properties>
    </widget>

    <widget name="routing_task_directive" type="text">
      <labels>
        <label mode="any">label.widget.task_step.directive</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>data.nt.directive</field>
      </fields>
      <properties mode="any">
        <property name="localize">true</property>
      </properties>
    </widget>

    <widget name="routing_task_actors" type="multiplePrefixedUsersSuggestion">
      <labels>
        <label mode="any">label.document.route.content.header.actors
        </label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>data.nt.actors</field>
      </fields>
      <properties mode="any">
        <property name="localize">true</property>
      </properties>
    </widget>

    <widget name="routing_task_comments" type="list">
      <labels>
        <label mode="any">label.content.header.comments</label>
      </labels>
      <fields>
        <field>data.nt.taskComments</field>
      </fields>
      <properties mode="any">
        <property name="localize">true</property>
        <property name="hideSubLabels">true</property>
      </properties>
      <subWidgets>
        <widget name="comment" type="text">
          <fields>
            <field></field>
          </fields>
        </widget>
      </subWidgets>
    </widget>

    <widget name="routing_task_workflow_name" type="listing_workflow_name_task">
      <labels>
        <label mode="any">label.review.type</label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>data.nt.processId</field>
      </fields>
      <properties mode="any">
        <property name="localize">true</property>
      </properties>
    </widget>

    <widget name="routing_task_process_btn" type="listing_process_task">
      <labels>
        <label mode="any"></label>
      </labels>
      <translated>true</translated>
      <fields>
        <field>data</field>
        <field>data.nt.targetDocumentsIds</field>
      </fields>
      <properties mode="any">
        <property name="tab">TAB_ROUTE_WORKFLOW</property>
      </properties>
    </widget>
    <!-- Listing widgets -->

    <widget name="workflowTabs" type="tabs">
      <properties mode="view">
        <property name="actionsDisplay">links</property>
        <property name="addForm">true</property>
        <property name="useAjaxForm">false</property>
        <property name="category">WORKFLOW_DASHBOARD</property>
        <property name="actions">#{webActions.getActionsList('WORKFLOW_DASHBOARD')}</property>
        <property name="currentTabAction">#{webActions.getCurrentTabAction('WORKFLOW_DASHBOARD')}</property>
        <property name="overallDisplay">horizontal_block</property>
      </properties>
    </widget>

  </extension>

  <extension target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager"
    point="layouts">

    <layout name="routing_task_listing">
      <templates>
        <template mode="any">
          /layouts/layout_listing_ajax_template.xhtml
        </template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <properties mode="any">
        <property name="showListingHeader">true</property>
        <property name="showRowEvenOddClass">true</property>
        <property name="display">table</property>
      </properties>
      <columns>
        <column>
          <properties mode="any">
            <property name="isListingSelectionBox">true</property>
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_ajax_selection_box</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">nt:name</property>
          </properties>
          <widget>routing_task_name</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
          </properties>
          <widget>routing_task_target_document</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">nt:directive</property>
          </properties>
          <widget>routing_task_directive</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">nt:dueDate</property>
          </properties>
          <widget>routing_task_duedate</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
          </properties>
          <widget>routing_task_actors</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
          </properties>
          <widget>routing_task_comments</widget>
        </column>
      </columns>
    </layout>

    <layout name="routing_user_open_task_listing">
      <templates>
        <template mode="any">
          /layouts/layout_listing_ajax_template.xhtml
        </template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <properties mode="any">
        <property name="showListingHeader">true</property>
        <property name="showRowEvenOddClass">true</property>
        <property name="display">table</property>
      </properties>
      <columns>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">nt:name</property>
          </properties>
          <widget>routing_task_workflow_name</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
          </properties>
          <widget>routing_task_name</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
          </properties>
          <widget>routing_task_target_document</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">nt:directive</property>
          </properties>
          <widget>routing_task_directive</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">nt:dueDate</property>
          </properties>
          <widget>routing_task_duedate</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
          </properties>
          <widget>routing_task_actors</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
          </properties>
          <widget>routing_task_process_btn</widget>
        </column>
      </columns>
    </layout>

    <layout name="routing_user_open_task_search_layout">
      <templates>
        <template mode="any">/layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <properties mode="any">
            <property name="nxl_colspan_0">1</property>
          </properties>
          <widget>task_name</widget>
        </row>
        <row>
          <properties mode="any">
            <property name="nxl_colspan_0">1</property>
            <property name="nxl_colspan_1">1</property>
          </properties>
          <widget>task_dueDate_min</widget>
          <widget>task_dueDate_max</widget>
        </row>
      </rows>
      <widget name="task_name" type="select2Widget">
        <labels>
          <label mode="any">label.workflow.task.name</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field>user_open_tasks_cv:task_name</field>
        </fields>
        <properties mode="any">
          <property name="operationId">Context.GetTaskNames</property>
          <property name="minChars">0</property>
          <property name="idProperty">nt:name</property>
          <property name="initOperationId">Context.GetTaskNames</property>
          <property name="labelProperty">dc:title</property>
          <property name="documentSchemas">task,dublincore</property>
        </properties>
      </widget>
      <widget name="task_dueDate_min" type="datetime">
        <labels>
          <label mode="any">label.widget.task_step.dueDate</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field>user_open_tasks_cv:task_dueDate_min</field>
        </fields>
      </widget>
      <widget name="task_dueDate_max" type="datetime">
        <labels>
          <label mode="any">label.search.and</label>
        </labels>
        <translated>true</translated>
        <fields>
          <field>user_open_tasks_cv:task_dueDate_max</field>
        </fields>
      </widget>
    </layout>

    <!--@since 5.8, layouts for task resolution screen on User home, applies 
      to a Task object -->
    <layout name="routing_task_general_info">
      <templates>
        <template mode="any">
          /layouts/layout_default_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <widget>task_workflow_name</widget>
        </row>
        <row>
          <widget>task_show_workflow_graph</widget>
        </row>
        <row>
          <widget>task_actors</widget>
        </row>
        <row>
          <widget>task_delegated_users</widget>
        </row>
        <row>
          <widget>task_duedate</widget>
        </row>
        <row>
          <widget>task_simple_directive</widget>
        </row>
      </rows>
    </layout>

    <layout name="routing_task_actions_layout">
      <templates>
        <template mode="any">/layouts/layout_grid_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <properties mode="any">
            <property name="gridRowStyleClass">floatR</property>
          </properties>
          <widget>go_back_to_tasks_view_widget</widget>
          <widget>delegate_task_widget</widget>
          <widget>reassign_task_widget</widget>
        </row>
      </rows>
      <widget name="go_back_to_tasks_view_widget" type="documentActionWithForms">
        <fields>
          <field>#{routingTaskActions.getTaskInfo(layoutValue,
            true)}
          </field>
        </fields>
        <properties widgetMode="any">
          <property name="actionId">go_back_to_tasks_view</property>
          <property name="actionStyleClass">smallButton</property>
          <property name="actionsDisplay">buttons</property>
          <property name="useAjaxForm">true</property>
          <property name="ignoreTemplateProperty">true</property>
          <property name="actionContextDocument">#{layoutValue.getDocument()}
          </property>
        </properties>
      </widget>
      <widget name="reassign_task_widget" type="documentActionWithForms">
        <fields>
          <field>#{routingTaskActions.getTaskInfo(layoutValue,
            true)}
          </field>
        </fields>
        <properties widgetMode="any">
          <property name="actionId">reassignTask</property>
          <property name="actionStyleClass">smallButton</property>
          <property name="actionsDisplay">buttons</property>
          <property name="useAjaxForm">true</property>
          <property name="ignoreTemplateProperty">true</property>
          <property name="actionContextDocument">#{layoutValue.getDocument()}
          </property>
        </properties>
        <widgetModes>
          <mode value="any">#{routingTaskActions.canBeReassign()?'edit':'hidden'}
          </mode>
        </widgetModes>
      </widget>
      <widget name="delegate_task_widget" type="documentActionWithForms">
        <fields>
          <field>#{routingTaskActions.getTaskInfo(layoutValue,
            true)}
          </field>
        </fields>
        <properties widgetMode="any">
          <property name="actionId">delegateTask</property>
          <property name="actionStyleClass">smallButton</property>
          <property name="actionsDisplay">buttons</property>
          <property name="useAjaxForm">true</property>
          <property name="ignoreTemplateProperty">true</property>
          <property name="actionContextDocument">#{layoutValue.getDocument()}
          </property>
        </properties>
      </widget>
    </layout>

    <layout name="routing_task_resolution_layout">
      <templates>
        <template mode="any">/layouts/layout_grid_template.xhtml
        </template>
      </templates>
      <rows>
        <row>
          <properties mode="any">
            <property name="nxl_gridStyleClass_0">gridStyle7</property>
            <property name="nxl_gridStyleClass_1">gridStyle5</property>
          </properties>
          <widget>container_0</widget>
          <widget>container_01</widget>
        </row>
        <row>
          <properties mode="any">
            <property name="nxl_gridStyleClass_0">gridStyle5</property>
            <property name="nxl_gridStyleClass_1">gridStyle7</property>
          </properties>
          <widget>container</widget>
          <widget>container_1</widget>
        </row>
        <row>
          <properties mode="any">
            <property name="nxl_gridStyleClass_0">gridStyle12</property>
          </properties>
          <widget>container_2</widget>
        </row>
      </rows>
      <widget name="container_0" type="container">
        <labels>
          <label mode="any"></label>
        </labels>
        <translated>false</translated>
        <fields>
          <field></field>
        </fields>
        <controls mode="any">
          <control name="handleLabels">true</control>
        </controls>
        <properties mode="any">
          <property name="hideSubLabels">true</property>
          <property name="styleClass">description_block</property>
        </properties>
        <subWidgetRefs>
          <widget>task_workflow_title</widget>
        </subWidgetRefs>
      </widget>
      <widget name="container_01" type="container">
        <labels>
          <label mode="any"></label>
        </labels>
        <translated>false</translated>
        <fields>
          <field></field>
        </fields>
        <controls mode="any">
          <control name="handleLabels">true</control>
        </controls>
        <properties mode="any">
          <property name="hideSubLabels">true</property>
          <property name="styleClass">horizontal_block</property>
        </properties>
        <subWidgets>
          <widget name="task_actions" type="layout">
            <properties mode="any">
              <property name="name">routing_task_actions_layout
              </property>
            </properties>
          </widget>
        </subWidgets>
      </widget>
      <widget name="container" type="container">
        <labels>
          <label mode="any"></label>
        </labels>
        <translated>false</translated>
        <fields>
          <field></field>
        </fields>
        <controls mode="any">
          <control name="handleLabels">true</control>
        </controls>
        <properties widgetMode="any">
          <property name="styleClass">fullWidth
          </property>
        </properties>
        <subWidgets>
          <widget name="sub0" type="layout">
            <labels>
              <label mode="any">routing_task_general_info</label>
            </labels>
            <translated>false</translated>
            <fields />
            <properties widgetMode="view">
              <property name="name">routing_task_general_info
              </property>
            </properties>
            <controls mode="any">
              <control name="handleLabels">true</control>
              <control name="requireSurroundingForm">true</control>
            </controls>
          </widget>
        </subWidgets>
      </widget>
      <widget name="container_1" type="container">
        <labels>
          <label mode="any"></label>
        </labels>
        <translated>false</translated>
        <fields>
          <field></field>
        </fields>
        <controls mode="any">
          <control name="handleLabels">true</control>
          <control name="requireSurroundingForm">true</control>
        </controls>
        <properties widgetMode="any">
          <property name="styleClass">grayBox</property>
          <property name="hideSubLabels">true</property>
        </properties>
        <subWidgetRefs>
          <widget>task_layout_with_actions</widget>
        </subWidgetRefs>
      </widget>
      <widget name="container_2" type="container">
        <labels>
          <label mode="any"></label>
        </labels>
        <translated>false</translated>
        <fields>
          <field></field>
        </fields>
        <controls mode="any">
          <control name="handleLabels">true</control>
        </controls>
        <subWidgets>
          <widget name="sub0" type="contentViewWithForms">
            <labels>
              <label mode="any"></label>
            </labels>
            <translated>false</translated>
            <properties widgetMode="view">
              <property name="showRefreshCommand">false</property>
              <property name="foldable">false</property>
              <property name="showSyndicationLinks">false</property>
              <property name="showPDFExport">false</property>
              <property name="showCSVExport">false</property>
              <property name="showPageSizeSelector">false</property>
              <property name="showFilterForm">false</property>
              <property name="contentViewName">task_target_documents</property>
            </properties>
            <controls mode="any">
              <control name="handleLabels">true</control>
            </controls>
          </widget>
        </subWidgets>
      </widget>
    </layout>

    <layout name="task_related_documents_listing">
      <templates>
        <template mode="any">/layouts/layout_listing_template.xhtml
        </template>
        <template mode="csv">
          /layouts/layout_listing_csv_template.xhtml
        </template>
        <template mode="pdf">
          /layouts/layout_listing_pdf_template.xhtml
        </template>
      </templates>
      <properties mode="any">
        <property name="showListingHeader">true</property>
        <property name="showRowEvenOddClass">true</property>
      </properties>
      <columns>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">false</property>
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <widget>listing_icon_type</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:title</property>
          </properties>
          <widget>listing_title_link</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
          </properties>
          <properties mode="csv">
            <property name="isHidden">true</property>
          </properties>
          <properties mode="pdf">
            <property name="isHidden">true</property>
          </properties>
          <widget>listing_lock_icon</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:modified</property>
            <property name="defaultSortAscending">false</property>
          </properties>
          <widget>listing_modification_date</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">dc:lastContributor</property>
          </properties>
          <widget>listing_last_contributor</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="columnStyleClass">iconColumn</property>
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="isSortable">false</property>
          </properties>
          <widget>listing_version</widget>
        </column>
        <column>
          <properties mode="any">
            <property name="useFirstWidgetLabelAsColumnHeader">true</property>
            <property name="sortPropertyName">
              ecm:currentLifeCycleState
            </property>
          </properties>
          <widget>listing_lifecycle</widget>
        </column>
      </columns>
    </layout>

  </extension>

</component>